查看原文
其他

SubQuery开发者指南丨Hello World (由SubQuery 托管)

区块链数据提供者 SubQuery中文站 2021-12-08


本快速入门的目的是展示如何通过几个简单的步骤让默认启动项目在 SubQuery Projects(我们的管理服务)中运行。


我们将采用简单的入门项目(以及我们学到的所有内容。但我们不会在 Docker 中本地运行它,而是利用 SubQuery 的托管基础架构。 换句话说,我们会让 SubQuery 完成所有繁重的工作,运行和管理生产基础设施。

学习目标



在本快速入门结束时,您应该:

  • 了解所需的先决条件

  • 能够在 SubQuery 项目中托管项目

  • 运行一个简单的查询以使用 Playground 来获取 Polkadot 主网的块高度

  • 运行一个简单的 GET 查询以使用 cURL 来获取 Polkadot 主网的块高度


目标听众



本指南面向具有一定开发经验并有兴趣了解有关 SubQuery 的更多信息的新开发人员。

视频指南



登录此网址,即可观看视频指南教程:https://youtu.be/b-ba8-zPOoo

先决条件



你将会需要:

  • 一个 GitHub 帐户

第1步:创建您的项目



让我们创建一个名为 subql_hellowworld 的项目,并使用您最喜欢的包管理器运行必需的安装、代码生成和构建。



不要运行 docker 命令

第2步:

创建 GitHub 存储库



在 GitHub 中,创建一个新的公共存储库。 提供一个名称并将您的可见性设置为公开。 在这里,一切都会被保留为默认值。



记下您的 GitHub URL,它必须是公开的,SubQuery 才能访问它。


第3步:

推送到 GitHub



回到您的项目目录,将其初始化为 git 目录。 否则,您可能会收到"fatal: not a git repository (or any of the parent directories): .git”



然后使用以下命令添加远程存储库:



这会将您的远程存储库设置为“https://github.com/seandotau/subqlHelloWorld.git”,并将其命名为“origin” — 这是 GitHub 中远程存储库的标准命名法。


接下来,我们使用以下命令将代码添加到我们的存储库中:



push 命令的意思是“请将我的代码从我的主本地存储库推送到原始存储库”。 刷新 GitHub 会显示 GitHub 中的所有代码。



现在您已将代码放入 GitHub,让我们看看如何在 SubQuery Projects 中托管它。

第4步:创建您的项目


‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

浏览此网址 https://project.subquery.network 并使用您的 GitHub 帐户登录。


 

然后新建一个项目

 


并用适当的详细信息填写各个字段。


  • GitHub 帐户:如果您有多个 GitHub 帐户,请选择将在哪个帐户下创建此项目。 在 GitHub 组织帐户中创建的项目在该组织的成员之间共享。

  • 项目名称:在此处为您的项目命名。

  • 副标题:为您的项目提供副标题。

  • 描述:解释您的 SubQuery 项目的用途。

  • GitHub 存储库 URL:这必须是包含您的 SubQuery 项目的公共存储库的有效 GitHub URL。schema.graphql 文件必须位于您目录的根目录中。

  • 隐藏项目:如果选中,这将在公共 SubQuery 浏览器中隐藏项目。 如果您想与社区共享您的 SubQuery 项目,请不要选择此项!



当您单击创建时,您将被带到控制面板。



控制面板包含许多有用的信息,例如它使用的网络、它运行的源代码的 GitHub 存储库 URL、它的创建时间和上次更新时间,尤其是部署的详细信息。

第5步:部署您的项目



现在您已经在 SubQuery Projects 中创建了您的项目,设置了显示行为后,下一步是部署您的项目使其可操作。 部署一个版本会触发新的 SubQuery 索引操作启动,并设置所需的查询服务以开始接受 GraphQL 请求。 您还可以在此处将新版本部署到现有项目。


您可以选择部署到各种环境,例如生产槽或暂存槽。 在这里,我们将部署到生产槽。 单击“部署”按钮会显示一个包含以下字段的屏幕:



  • 新版本的 Commit Hash:从 GitHub 中选择您要部署的 SubQuery 项目代码库的正确交付

  • 索引器版本:这是您要在其上运行此SubQuery项目的SubQuery节点服务的版本。 请登录此网址参考 https://www.npmjs.com/package/@subql/node

  • 查询版本:这是您要在其上运行此 SubQuery 项目的 SubQuery 查询服务的版本。 请登录此网址参考 https://www.npmjs.com/package/@subql/query


因为我们只有一个交付,所以下拉菜单中只有一个选项。 我们还将使用最新版本的索引器和查询版本,因此我们将接受默认值,然后单击“部署更新”。


然后,您将看到您的部署处于“正在处理”状态。 在这里,您的代码正在部署到 SubQuery 的托管基础架构上。 服务器正在按需启动并准备为您提供服务,这将需要几分钟的时间。



部署现在正在运行。


第6步:测试您的项目



要测试您的项目,请单击省略号并选择“在SubQuery浏览器上查看”。



这将带您进入熟悉的“Playground”,您可以在其中单击播放按钮并查看查询结果。


第7步:奖励步骤



对于我们中的敏锐者,您会记得在学习目标中,最后一点是运行一个简单的 GET 查询。 为此,我们需要获取部署详细信息中显示的“查询端点”。



然后,您可以使用您喜欢的客户端(例如 Postman,https://www.postman.com/或Mockoon,https://mockoon.com/)向此端点发送 GET 请求或 Mockoon, 或通过终端中的 cURL向此端点发送 GET 请求。 为简单起见,cURL 将在下面显示。


要运行的 curl 命令是:


curl https://api.subquery.network/sq/seandotau/subqueryhelloworld -d "query=query { starterEntities (first: 5, orderBy: CREATED_AT_DESC) { totalCount nodes { id field1 field2 field3 } } }"



给出以下结果:


“{"data":{"starterEntities":{"totalCount":23098,"nodes":[{"id":"0x29dfe9c8e5a1d51178565c2c23f65d249b548fe75a9b6d74cebab777b961b1a6","field1":23098,"field2":null,"field3":null},{"id":"0xab7d3e0316a01cdaf9eda420cf4021dd53bb604c29c5136fef17088c8d9233fb","field1":23097,"field2":null,"field3":null},{"id":"0x534e89bbae0857f2f07b0dea8dc42a933f9eb2d95f7464bf361d766a644d17e3","field1":23096,"field2":null,"field3":null},{"id":"0xd0af03ab2000a58b40abfb96a61d312a494069de3670b509454bd06157357db6","field1":23095,"field2":null,"field3":null},{"id":"0xc9f5a92f4684eb039e11dffa4b8b22c428272b2aa09aff291169f71c1ba0b0f7","field1":23094,"field2":null,"field3":null}]}}}



可读性在这里不是问题,因为您可能会有一些前端代码来使用和解析这个 JSON 响应。

概括



在这个 SubQuery 托管的快速入门中,我们展示了获取 Subql 项目并将其部署到 SubQuery 项目是多么的快速和容易。这将为您提供所有基础设施。 并且有一个用于运行各种查询的内置 playground,以及一个供您的代码集成的 API 端点。



Website:https://www.subquery.network/


Telegram:https://t.me/subquerynetwork


Twitter:https://twitter.com/subquerynetwork


Medium:https://subquery.medium.com/


Github:https://github.com/subquery/subql


Matrix:https://matrix.to/#/#subquery:matrix.org


Linkedin:https://www.linkedin.com/company/subquery


往期精彩


《SubQuery丨全球大使招募计划》


《SubQuery丨让去中心化数据近在眼前》


《SubQuery丨首秀 AMA ,精彩内容》


《SubQuery丨字典索引新功能,性能提高10倍》

《SubQuery 让波卡生态垮链数据更易获取》


《SubQuery丨我们的目标和竞争优势》


《SubQuery丨2021年7月回顾》


《SubQuery丨开发者快速入门指南》


《SubQuery丨Hello world 入门简介》


《SubQuery View : Astar 会是波卡生态的 DApp 中心枢纽吗?》


《战略合作丨Karura 与 SubQuery 合作,为 Kusama Builders 提供 DeFi 数据》

《SubQuery 联合 Moonbeam ,共同致力于波卡生态的发展》

《SubQuery对话Phala,打造Web 3.0共享云生态》


《SubQuery开发者指南丨Hello World Explained》


《战略合作丨SORA 与 SubQuery 合作向 SORA 网络提供数据》





扫码加入SubQuery官方微信社区



: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存